1. Field of the Invention
The present invention relates to a technique for recording an original audio signal obtained from a conventional acoustic musical instrument as a digital waveform data array and reproducing the recorded data array.
2. Description of the Related Art
In the field of electronic musical instruments, a sound source called a PCM sound source incorporates a waveform memory for storing musical tone data as waveform data (PCM data) arrays.
In operation, the PCM sound source reads out waveform data from the waveform memory at a speed corresponding to a required pitch to produce a musical tone signal having a desired pitch.
This PCM sound source disadvantageously requires a large-capacity memory as a waveform memory. In order to eliminate this drawback, a differential PCM (DPCM) scheme is available. According to the DPCM scheme, in an expectation that the number of bits required to express a difference value between adjacent waveform data is smaller than the number of bits required to express each waveform data, a difference value data array (difference data array) is recorded in place of each waveform data array. At the time of reproduction, a DPCM sound source accumulates difference data read out from the difference data array memory to reproduce waveform data.
Reproduction precision in a conventional DPCM scheme undesirably varies depending on tone colors and the like of original audio signals.
In the conventional DPCM scheme, a waveform data array {x(n)} having a given number of bits (e.g., 16 bits) is converted into a difference data array {d(n)} having the number of bits (e.g., 8 bits) smaller than that of the waveform data array {x(n)}. The basic principle of conversion will be described below. First, the difference between adjacent waveform data x(k) and x(k-1) is calculated as follows: EQU x(k)-x(k-1)=Dx (1)
The difference Dx is difference data expressed by 16 bits. When the magnitude of the difference data Dx can be represented by 8 bits (i.e., -128 to 127), the lower 8 bits of 16-bit difference data Dx are defined as kth 8-bit difference data d(x).
For example, if the difference data Dk is represented by
0000000001000000, PA1 01000000. PA1 0000100000000000 (2048 in decimal notation), d(k) is clipped to an 8-bit maximum positive value as follows: PA1 01111111 (127 in decimal notation).
then, d(x) is given as
In this case, a two's complement is assumed. When the magnitude of the Dx represents a value which cannot be expressed by eight bits, the data d(k) is clipped to a maximum value which can be expressed by eight bits.
For example, if Dx is
In order to reduce an accumulation error caused by clipping, the following equation is calculated in practice in place of equation (1): ##EQU1## so that 16-bit difference data dx is converted into 8-bit difference data d(x).
Waveform distortion occurs in a waveform reproduced from the difference data array {(d(n)} due to the above clipping. In addition to this drawback, the frequency of occurrence of clipping, which causes a decrease in S/N ratio, depends on the waveform data array {x(n)} and hence the spectrum or tone color of an original tone to be recorded. As a result, the conventional DPCM scheme cannot guarantee desired reproduction fidelity or precision due to variations in S/N ratio caused depending on the kinds of original audio signals.
The above differential PCM scheme is called a linear differential PCM scheme. Clipping occurring in the linear differential PCM scheme can be eliminated by using a technique called a non-linear differential PCM scheme. In the non-linear DPCM scheme, in the recording mode, a waveform data array is converted into a nonlinear difference data array having a limited number of bits in accordance with a predetermined non-linear function (e.g., a logarithmic function). In the reproduction mode, a waveform data array is reproduced from a non-linear difference data array in accordance with a reverse function (e.g., an exponential function) of the non-linear function. When a non-linear DPCM scheme of this type is used, a relatively large linear difference value of a waveform data array can be converted into non-linear difference data having a smaller number of significant bits by non-linear conversion.
Even if a non-linear DPCM scheme is used, however, variations occur in the S/N ratio or reproducibility accordance with the kinds of original audio signals or tones. For example, in a logarithmic difference data array is changed by the kinds (i.e., magnitudes of variations in waveform data array) of original tones. For example, in a logarithmic DPCM scheme, reproducibility of a portion of the waveform data array having a small variation is adversely affected depending on the kinds of original tones.
In addition, in a sound source using a waveform data memory for storing a waveform data array or a difference data array, the reproduced waveform data array is not directly output. The reproduced waveform data array is often digitally filtered to generate a processed waveform data array so as to obtain a desired tone color or the like. A sound source (waveform generation apparatus) of this type requires high-speed data processing. When a waveform reproduction technique for assuring desired reproduction precision is applied to a waveform generation apparatus of this type, a complicated arrangement of the waveform generation apparatus and reduction in data processing speed are desirably prevented.